# coding:utf8
import findspark

findspark.init()
from pyspark.sql import SparkSession

if __name__ == '__main__':
    # 0. 构建执行环境入口对象SparkSession
    spark = SparkSession.builder. \
        appName("test"). \
        master("local[*]"). \
        config("spark.sql.shuffle.partitions", 2). \
        getOrCreate()
    sc = spark.sparkContext

    """读取数据"""
    df = spark.read.format("csv"). \
        option("sep", ";"). \
        option("header", True). \
        load("hdfs://bigdata:9820/pySpark_input/people.csv")
    # 数据清洗: 数据去重
    # dropDuplicates 是DataFrame的API, 可以完成数据去重
    # 无参数使用, 对全部的列 联合起来进行比较, 去除重复值, 只保留一条
    df.dropDuplicates().show()
    df.dropDuplicates(['age', 'job']).show()
